package com.xquant.system.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;

/**
 * 债券违约表 三方对比
 * @TableName TWC_BND_DEFAULT_COMPARE_TEST
 */
@TableName(value ="TWC_BND_DEFAULT_COMPARE_TEST")
public class TwcBndDefaultCompareTest implements Serializable {
    /**
     * 自增主键
     */
    @TableField("ID")
    private String id;

    /**
     * 更新人
     */
    @TableField("UPDATED_BY")
    private String updatedBy;

    /**
     * 导入日期
     */
    @TableField("IMP_TIME")
    private String impTime;

    /**
     * 数据状态
     */
    @TableField("DATA_STATUS")
    private Long dataStatus;

    /**
     * 债券代码
     */
    @TableField("I_CODE")
    private String iCode;

    /**
     * 债券市场
     */
    @TableField("M_TYPE")
    private String mType;

    /**
     * 债券合并内码
     */
    @TableField("D_CODE")
    private String dCode;

    /**
     * 违约事件
     */
    @TableField("DEFAULT_EVENT")
    private String defaultEvent;

    /**
     * 违约日期
     */
    @TableField("DEFAULT_DATE")
    private String defaultDate;

    /**
     * 违约类型
     */
    @TableField("DEFAULT_TYPE")
    private String defaultType;

    /**
     * 违约总金额
     */
    @TableField("DEFAULT_AMOUNT")
    private String defaultAmount;

    /**
     * 违约本金
     */
    @TableField("DEFAULT_NOTIONAL")
    private String defaultNotional;

    /**
     * 违约利息
     */
    @TableField("DEFAULT_INT")
    private String defaultInt;

    /**
     * 更新时间
     */
    @TableField("UPDATE_TIME")
    private String updateTime;

    /**
     * 更新日期
     */
    @TableField("UPDATE_DATE")
    private String updateDate;

    /**
     * 联合主键
     */
    @TableField("SEC_CODE")
    private String secCode;

    /**
     * 更新时间
     */
    @TableField("UPDATED_TIME")
    private Date updatedTime;

    /**
     * 债券简称
     */
    @TableField("NAME")
    private String name;

    /**
     * 数据源组合
     */
    @TableField("DATA_STATUS_SRC")
    private Long dataStatusSrc;

    /**
     * 管道编号
     */
    @TableField("PIPE_ID")
    private Long pipeId;

    /**
     * 维护日期
     */
    @TableField("IMP_DATE")
    private String impDate;

    /**
     * 0：删除 ，1：正常
     */
    @TableField("ISEXIST")
    private String isexist;

    /**
     * 数据来源
     */
    @TableField("DATA_SOURCES")
    private String dataSources;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    /**
     * 自增主键
     */
    public String getId() {
        return id;
    }

    /**
     * 自增主键
     */
    public void setId(String id) {
        this.id = id;
    }

    /**
     * 更新人
     */
    public String getUpdatedBy() {
        return updatedBy;
    }

    /**
     * 更新人
     */
    public void setUpdatedBy(String updatedBy) {
        this.updatedBy = updatedBy;
    }

    /**
     * 导入日期
     */
    public String getImpTime() {
        return impTime;
    }

    /**
     * 导入日期
     */
    public void setImpTime(String impTime) {
        this.impTime = impTime;
    }

    /**
     * 数据状态
     */
    public Long getDataStatus() {
        return dataStatus;
    }

    /**
     * 数据状态
     */
    public void setDataStatus(Long dataStatus) {
        this.dataStatus = dataStatus;
    }

    /**
     * 债券代码
     */
    public String getiCode() {
        return iCode;
    }

    /**
     * 债券代码
     */
    public void setiCode(String iCode) {
        this.iCode = iCode;
    }

    /**
     * 债券市场
     */
    public String getmType() {
        return mType;
    }

    /**
     * 债券市场
     */
    public void setmType(String mType) {
        this.mType = mType;
    }

    /**
     * 债券合并内码
     */
    public String getdCode() {
        return dCode;
    }

    /**
     * 债券合并内码
     */
    public void setdCode(String dCode) {
        this.dCode = dCode;
    }

    /**
     * 违约事件
     */
    public String getDefaultEvent() {
        return defaultEvent;
    }

    /**
     * 违约事件
     */
    public void setDefaultEvent(String defaultEvent) {
        this.defaultEvent = defaultEvent;
    }

    /**
     * 违约日期
     */
    public String getDefaultDate() {
        return defaultDate;
    }

    /**
     * 违约日期
     */
    public void setDefaultDate(String defaultDate) {
        this.defaultDate = defaultDate;
    }

    /**
     * 违约类型
     */
    public String getDefaultType() {
        return defaultType;
    }

    /**
     * 违约类型
     */
    public void setDefaultType(String defaultType) {
        this.defaultType = defaultType;
    }

    /**
     * 违约总金额
     */
    public String getDefaultAmount() {
        return defaultAmount;
    }

    /**
     * 违约总金额
     */
    public void setDefaultAmount(String defaultAmount) {
        this.defaultAmount = defaultAmount;
    }

    /**
     * 违约本金
     */
    public String getDefaultNotional() {
        return defaultNotional;
    }

    /**
     * 违约本金
     */
    public void setDefaultNotional(String defaultNotional) {
        this.defaultNotional = defaultNotional;
    }

    /**
     * 违约利息
     */
    public String getDefaultInt() {
        return defaultInt;
    }

    /**
     * 违约利息
     */
    public void setDefaultInt(String defaultInt) {
        this.defaultInt = defaultInt;
    }

    /**
     * 更新时间
     */
    public String getUpdateTime() {
        return updateTime;
    }

    /**
     * 更新时间
     */
    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 更新日期
     */
    public String getUpdateDate() {
        return updateDate;
    }

    /**
     * 更新日期
     */
    public void setUpdateDate(String updateDate) {
        this.updateDate = updateDate;
    }

    /**
     * 联合主键
     */
    public String getSecCode() {
        return secCode;
    }

    /**
     * 联合主键
     */
    public void setSecCode(String secCode) {
        this.secCode = secCode;
    }

    /**
     * 更新时间
     */
    public Date getUpdatedTime() {
        return updatedTime;
    }

    /**
     * 更新时间
     */
    public void setUpdatedTime(Date updatedTime) {
        this.updatedTime = updatedTime;
    }

    /**
     * 债券简称
     */
    public String getName() {
        return name;
    }

    /**
     * 债券简称
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 数据源组合
     */
    public Long getDataStatusSrc() {
        return dataStatusSrc;
    }

    /**
     * 数据源组合
     */
    public void setDataStatusSrc(Long dataStatusSrc) {
        this.dataStatusSrc = dataStatusSrc;
    }

    /**
     * 管道编号
     */
    public Long getPipeId() {
        return pipeId;
    }

    /**
     * 管道编号
     */
    public void setPipeId(Long pipeId) {
        this.pipeId = pipeId;
    }

    /**
     * 维护日期
     */
    public String getImpDate() {
        return impDate;
    }

    /**
     * 维护日期
     */
    public void setImpDate(String impDate) {
        this.impDate = impDate;
    }

    /**
     * 0：删除 ，1：正常
     */
    public String getIsexist() {
        return isexist;
    }

    /**
     * 0：删除 ，1：正常
     */
    public void setIsexist(String isexist) {
        this.isexist = isexist;
    }

    /**
     * 数据来源
     */
    public String getDataSources() {
        return dataSources;
    }

    /**
     * 数据来源
     */
    public void setDataSources(String dataSources) {
        this.dataSources = dataSources;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        TwcBndDefaultCompareTest other = (TwcBndDefaultCompareTest) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getUpdatedBy() == null ? other.getUpdatedBy() == null : this.getUpdatedBy().equals(other.getUpdatedBy()))
            && (this.getImpTime() == null ? other.getImpTime() == null : this.getImpTime().equals(other.getImpTime()))
            && (this.getDataStatus() == null ? other.getDataStatus() == null : this.getDataStatus().equals(other.getDataStatus()))
            && (this.getiCode() == null ? other.getiCode() == null : this.getiCode().equals(other.getiCode()))
            && (this.getmType() == null ? other.getmType() == null : this.getmType().equals(other.getmType()))
            && (this.getdCode() == null ? other.getdCode() == null : this.getdCode().equals(other.getdCode()))
            && (this.getDefaultEvent() == null ? other.getDefaultEvent() == null : this.getDefaultEvent().equals(other.getDefaultEvent()))
            && (this.getDefaultDate() == null ? other.getDefaultDate() == null : this.getDefaultDate().equals(other.getDefaultDate()))
            && (this.getDefaultType() == null ? other.getDefaultType() == null : this.getDefaultType().equals(other.getDefaultType()))
            && (this.getDefaultAmount() == null ? other.getDefaultAmount() == null : this.getDefaultAmount().equals(other.getDefaultAmount()))
            && (this.getDefaultNotional() == null ? other.getDefaultNotional() == null : this.getDefaultNotional().equals(other.getDefaultNotional()))
            && (this.getDefaultInt() == null ? other.getDefaultInt() == null : this.getDefaultInt().equals(other.getDefaultInt()))
            && (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime()))
            && (this.getUpdateDate() == null ? other.getUpdateDate() == null : this.getUpdateDate().equals(other.getUpdateDate()))
            && (this.getSecCode() == null ? other.getSecCode() == null : this.getSecCode().equals(other.getSecCode()))
            && (this.getUpdatedTime() == null ? other.getUpdatedTime() == null : this.getUpdatedTime().equals(other.getUpdatedTime()))
            && (this.getName() == null ? other.getName() == null : this.getName().equals(other.getName()))
            && (this.getDataStatusSrc() == null ? other.getDataStatusSrc() == null : this.getDataStatusSrc().equals(other.getDataStatusSrc()))
            && (this.getPipeId() == null ? other.getPipeId() == null : this.getPipeId().equals(other.getPipeId()))
            && (this.getImpDate() == null ? other.getImpDate() == null : this.getImpDate().equals(other.getImpDate()))
            && (this.getIsexist() == null ? other.getIsexist() == null : this.getIsexist().equals(other.getIsexist()))
            && (this.getDataSources() == null ? other.getDataSources() == null : this.getDataSources().equals(other.getDataSources()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getUpdatedBy() == null) ? 0 : getUpdatedBy().hashCode());
        result = prime * result + ((getImpTime() == null) ? 0 : getImpTime().hashCode());
        result = prime * result + ((getDataStatus() == null) ? 0 : getDataStatus().hashCode());
        result = prime * result + ((getiCode() == null) ? 0 : getiCode().hashCode());
        result = prime * result + ((getmType() == null) ? 0 : getmType().hashCode());
        result = prime * result + ((getdCode() == null) ? 0 : getdCode().hashCode());
        result = prime * result + ((getDefaultEvent() == null) ? 0 : getDefaultEvent().hashCode());
        result = prime * result + ((getDefaultDate() == null) ? 0 : getDefaultDate().hashCode());
        result = prime * result + ((getDefaultType() == null) ? 0 : getDefaultType().hashCode());
        result = prime * result + ((getDefaultAmount() == null) ? 0 : getDefaultAmount().hashCode());
        result = prime * result + ((getDefaultNotional() == null) ? 0 : getDefaultNotional().hashCode());
        result = prime * result + ((getDefaultInt() == null) ? 0 : getDefaultInt().hashCode());
        result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode());
        result = prime * result + ((getUpdateDate() == null) ? 0 : getUpdateDate().hashCode());
        result = prime * result + ((getSecCode() == null) ? 0 : getSecCode().hashCode());
        result = prime * result + ((getUpdatedTime() == null) ? 0 : getUpdatedTime().hashCode());
        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
        result = prime * result + ((getDataStatusSrc() == null) ? 0 : getDataStatusSrc().hashCode());
        result = prime * result + ((getPipeId() == null) ? 0 : getPipeId().hashCode());
        result = prime * result + ((getImpDate() == null) ? 0 : getImpDate().hashCode());
        result = prime * result + ((getIsexist() == null) ? 0 : getIsexist().hashCode());
        result = prime * result + ((getDataSources() == null) ? 0 : getDataSources().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", updatedBy=").append(updatedBy);
        sb.append(", impTime=").append(impTime);
        sb.append(", dataStatus=").append(dataStatus);
        sb.append(", iCode=").append(iCode);
        sb.append(", mType=").append(mType);
        sb.append(", dCode=").append(dCode);
        sb.append(", defaultEvent=").append(defaultEvent);
        sb.append(", defaultDate=").append(defaultDate);
        sb.append(", defaultType=").append(defaultType);
        sb.append(", defaultAmount=").append(defaultAmount);
        sb.append(", defaultNotional=").append(defaultNotional);
        sb.append(", defaultInt=").append(defaultInt);
        sb.append(", updateTime=").append(updateTime);
        sb.append(", updateDate=").append(updateDate);
        sb.append(", secCode=").append(secCode);
        sb.append(", updatedTime=").append(updatedTime);
        sb.append(", name=").append(name);
        sb.append(", dataStatusSrc=").append(dataStatusSrc);
        sb.append(", pipeId=").append(pipeId);
        sb.append(", impDate=").append(impDate);
        sb.append(", isexist=").append(isexist);
        sb.append(", dataSources=").append(dataSources);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}